package com.shop.cereshop.business.param.bond;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * @description: 商家充值参数
 * @author lx
 * @date 2025/10/23 09:40
 * @version 1.0
 */
@Data
@ApiModel(value = "ShopRechargeDTO", description = "商家充值参数")
public class ShopRechargeDTO {

    /**
     * 店铺ID
     */
    @ApiModelProperty(value = "店铺id(业务字段，无需传参)")
    private Long shopId;

    /**
     * 充值金额
     */
    @ApiModelProperty(value = "充值金额", required = true, example = "10.00")
    @NotNull(message = "充值金额不能为空")
    @DecimalMin(value = "0.01", message = "充值金额不能小于0.01")
    @DecimalMax(value = "5000.00", message = "充值金额不能大于5000.00")
    private BigDecimal amount;

    /**
     * 充值方式
     */
    @ApiModelProperty(value = "充值方式(1：微信支付，2：支付宝支付,默认值：无)", required = true, example = "1")
    @NotNull(message = "支付方式不能为空")
    private Integer payType;

    /**
     * 充值备注
     */
    @ApiModelProperty(value = "充值备注", example = "充值备注")
    private String remark;
}
